As cloud and distributed computing models become more common-place, there is great potential to apply these patterns in the contact center space. A contact center utilizes different resources to accomplish various support tasks. Such resources include contact center agents with various specialties or skills, computing and voice resources for handling telephony calls, emails, and other interactions, and other information and communications technology (ICT) conventional in the art.
A typical contact center deployment for a large enterprise includes one or more data centers with several branch sites distributed over different geographic locations. The main contact center resources including computing resources and databases, are hosted at the data center. Each branch site is coupled to the data center over a data communication network, and includes local resources such as, for example, local media resources, local PBX, web servers, and the like.
There are situations that cause local branches to lose communication with the data center. In those situations, it is desirable for the local branches to survive locally and continue to provide contact center services without access to resources located at the data center.
In other situations, the data center and/or local branches may be overloaded with too many requests. In this scenario, it may be desirable to obtain additional capacity from other contact center sites if those other sites have excess capacity.